package com.blog.cmrpersonalblog.service;

import com.blog.cmrpersonalblog.dto.notification.respnose.NotificationResponse;

/**
 * WebSocket通知推送服务接口
 */
public interface WebSocketNotificationService {

    /**
     * 向指定用户推送通知
     * 
     * @param userId 用户ID
     * @param notification 通知内容
     */
    void pushNotificationToUser(Long userId, NotificationResponse notification);

    /**
     * 向所有在线用户广播通知
     * 
     * @param notification 通知内容
     */
    void broadcastNotification(NotificationResponse notification);

    /**
     * 向指定用户推送未读通知数量
     * 
     * @param userId 用户ID
     * @param unreadCount 未读数量
     */
    void pushUnreadCount(Long userId, Integer unreadCount);
}

